# 可变参数分为：
# 不定长参数，将传递进来的参数封装为元祖
# 关键字可变参数，以键值对的方式进行使用

# 可变参数的混合使用时，需要将关键字可变参数放在最后
def func1(*args,**kwargs):
    """
    参数的混合使用；两种不定长参数混合使用，将关键字可变参数放在后面
    :param args: 不定长参数（参数封装在元祖中）
    :param kwargs: 关键字可变参数（以key-value方式传递的参数）
    :return:
    """
    print(args)
    print(kwargs)
    pass
# 混合使用时，关键字可变参数可以直接以键值对的方式给定
func1(1,2,3,4,5,name="张三",age=23)
# 若关键字可变参数以字典方式传递时，需要在参数前面加上**，表示该参数为关键字可变参数
func1(1,2,3,4,**{"name":"tom","age":29})
